// #include <iostream>
// #include<initializer_list>
//
// using namespace std;
//
// template<typename _Ty1,int count>
// class my_array
// {
// public:
//     my_array()
//     {
//         arr = new _Ty1[count];
//     }
//     my_array(const std::initializer_list<_Ty1>& data)
//     {
//         arr = new _Ty1[data.size()];
//         int i = 0;
//         for (auto &v:data)
//         {
//             arr[i] = v;
//             i++;
//         }
//     }
//     int size()
//     {
//         return count;
//     }
//     bool empty()
//     {
//         return count==0;
//     }
//     _Ty1 operator[](int index)
//     {
//         return arr[index];
//     }
//
//
// protected:
//     _Ty1* arr;
// public:
//
//     _Ty1* begin()
//     {
//         return arr;
//     }
//     _Ty1* end()
//     {
//         return arr+count;
//     }
// };
// void test_my_array()
// {
//     my_array<int,5>  num;
//     my_array<int,5>  demo={1,2,3,4,5};
//     my_array<int,3>  key={1,2,3};
//
//     for (int i=0;i<demo.size();i++)
//     {
//         cout << demo[i] << endl;
//     }
//
//     //必须具备 beigin 和end 函数
//     for (auto& v: demo)
//     {
//         cout << v << endl;
//     }
// }
//
// int main()
// {
//     test_my_array();
// }